package com.atguigu.memento.theory;

/**
 * @author shengxiao
 * @date 2021/9/30 13:26
 */
public class Client {

    public static void main(String[] args) {

        Originator originator = new Originator() ;
        Caretaker caretaker = new Caretaker() ;

        originator.setState("状态#1 攻击力 100 ");

        // 保存了当前的状态
        caretaker.add(originator.saveStateMemento());

        originator.setState("状态#2 攻击力 80 ");

        caretaker.add(originator.saveStateMemento());

        originator.setState("状态#3 攻击力 50 ");

        caretaker.add(originator.saveStateMemento());

        System.out.println("当前的状态是 = " + originator.getState());

        System.out.println("==============================================");

        // 希望得到状态 1 ,将 originator 恢复都状态1
        originator.getStateFromMemento(caretaker.get(0));

        System.out.println("恢复到状态1，当前的状态是");
        System.out.println("当前的状态是 = " + originator.getState());

    }
}
